home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 32
/
Aminet 32 (1999)(Schatztruhe)[!][Aug 1999].iso
/
Aminet
/
dev
/
lang
/
Python152_Src.lha
/
Python152_Source
/
Amiga
/
strerror.c
< prev
next >
Wrap
C/C++ Source or Header
|
1998-12-25
|
2KB
|
74 lines
RCS_ID_C="$Id: strerror.c,v 4.1 1994/09/29 23:09:02 jraja Exp $";
/*
* strerror.c - network errno support for AmiTCP/IP
*
* Copyright © 1994 AmiTCP/IP Group,
* Network Solutions Development Inc.
* All rights reserved.
*/
#include <errno.h>
#include <bsdsocket.h>
#include <amitcp/socketbasetags.h>
/****** net.lib/strerror *****************************************************
NAME
strerror -- return the text for given error number
SYNOPSIS
string = strerror(error);
char * strerror(int);
FUNCTION
This function returns pointer to the (English) string describing the
error code given as argument. The error strings are defined for the
error codes defined in <sys/errno.h>.
NOTES
The string pointed to by the return value should not be modified by
the program, but may be overwritten by a subsequent call to this
function.
BUGS
The strerror() prototype should be
const char *strerror(unsigned int);
However, the SAS C includes define it differently.
SEE ALSO
<netinclude:sys/errno.h>, perror(), PrintNetFault()
*****************************************************************************
*/
#include "libcheck.h"
extern char *__sys_errlist[];
#ifdef notyet
const char *
strerror(unsigned int error)
#else
char *
strerror(int error)
#endif
{
ULONG taglist[3];
if(!checksocketlib())
{
/* cannot use bsdsocket.lib's error strings, use those from SAS */
PyErr_Clear();
if(error>=0 && error<=34) return __sys_errlist[error];
if(error==ELOOP) return "Too many levels of links"; /* link loop */
else return __sys_errlist[0];
}
taglist[0] = SBTM_GETVAL(SBTC_ERRNOSTRPTR);
taglist[1] = error;
taglist[2] = TAG_END;
SocketBaseTagList((struct TagItem *)taglist);
return (char *)taglist[1];
}